package com.balance.anole.erp.navigate.model;

import java.util.ArrayList;
import java.util.List;
import java.util.Map;

import org.apache.commons.lang.builder.ToStringBuilder;

public class MenuNode {

	private String name;

	private String type;

	private String commandId;

	private Map paramMap;

	private MenuNode parent;

	private List<MenuNode> children = new ArrayList<MenuNode>();

	public MenuNode(){

	}

	public MenuNode(String name, String type){
		this.name = name;
		this.type = type;
	}

	public MenuNode(MenuNode parent){
		this.parent = parent;
	}

	public MenuNode(MenuNode parent, String name, String type){
		this.name = name;
		this.type = type;
	}

	public String getName() {
		return name;
	}

	public void setName(String name) {
		this.name = name;
	}

	public String getType() {
		return type;
	}

	public void setType(String type) {
		this.type = type;
	}

	public String getCommandId() {
		return commandId;
	}

	public void setCommandId(String commandId) {
		this.commandId = commandId;
	}

	public MenuNode getParent() {
		return parent;
	}

	public void setParent(MenuNode parent) {
		this.parent = parent;
	}

	public List<MenuNode> getChildren() {
		return children;
	}

	public void setChildren(List<MenuNode> children) {
		this.children = children;
	}

	public Map getParamMap() {
		return paramMap;
	}

	public void setParamMap(Map paramMap) {
		this.paramMap = paramMap;
	}

	@Override
	public String toString() {
		return ToStringBuilder.reflectionToString(this);
	}

}
